Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour U.S. Open - New York Ottignies-Louvain-la-Neuve Challenger Internazionali BNL d'Italia - Rome Zagreb Challenger Wimbledon - London U.S. Open - New York Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Brisbane International - Brisbane Zadar Challenger Tiriac Open - Bucharest Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Boss Open - Stuttgart Citi Open - Washington U.S. Open - New York Chengdu Open - Chengdu Hangzhou Open - Hangzhou Shanghai Rolex Masters - Shanghai Rolex Paris Masters - Paris European Open - Brussels Bosnia & Herzegovina F2 Croatia F8 Bosnia/Herzegovina F6 Bosnia/Herzegovina F1 Bosnia & Herzegovina F2 Croatia F7 Croatia F8 Israel F3 Croatia F1 Croatia F2 Italy F6 Italy F7 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F5 Serbia F1 Serbia F2 Serbia F3 Serbia F7 Croatia F7 Croatia F8 Croatia F9 Croatia F12 Croatia F13 Croatia F14 Turkey F32 Turkey F33 Turkey F3 Turkey F4 Croatia F1 Italy F1 Italy F2 Bosnia & Herzegovina F1 Bosnia & Herzegovina F2 Bosnia & Herzegovina F3 Bosnia & Herzegovina F5 Italy F20 Croatia F11 Croatia F12 Turkey F2 Croatia F1 Croatia F2 Italy F1 Italy F5 Bosnia & Herzegovina F4 Serbia F3 Croatia F12 France F10 (Toulouse) France F11 (Montauban) France F22 (Rodez) M15+H Bressuire M15 Toulouse M15 Poitiers M15 Grasse M25 Troyes M15 Benicarlo M15 Monastir M15 Monastir M15 Monastir M15 Monastir M15 La Nucia M25 La Nucia M25 Reus M25 Angers M15 Las Palmas de Gran Canaria M15 Majadahonda M25+H Ajaccio M25 Uriage M25 Nevers M25+H Rodez M25 Toulouse M15 Antalya M25 Montauban M25 Gandia Bulgaria F1 M25+H Toulouse M25 Saint Dizier Croatia F10 Sarajevo Challenger M15 Antalya M15 Creteil M15 Poitiers M25 Ulcinj M25 Grasse M25 Getxo M25 Uriage Blumenau Challenger M15 Shymkent Milan Challenger San Marino Challenger Cordenons Challenger Como Challenger Brasov Challenger Trnava Challenger Lermontov Challenger M25 Montauban Prostejov Challenger Kosice Challenger Poznan Challenger Liberec Challenger Kazan Challenger Banja Luka Challenger Casablanca Challenger Irving Challenger Mersin Challenger M25+H Plaisir San Benedetto Challenger M15 Shymkent M25 Bagneres-De-Bigorre Geneva Challenger Morelos Challenger Irving Challenger San Benedetto Challenger Alphen Challenger Mohammedia Challenger Guadalajara Challenger Prostejov Challenger Alphen Challenger Mohammedia Challenger Casablanca Challenger Blois Challenger New Haven Challenger Salzburg-Anif Challenger Tulln Challenger Cassis Challenger BH Indoor Sarajevo - Sarajevo Liberec Challenger Kobe Challenger Zadar Challenger Montemar Challenger Cap Cana Challenger Casablanca Challenger Rome Challenger Tashkent Challenger Trnava Challenger Moscow Challenger Braunschweig Challenger Santo Domingo Challenger Meknes Challenger Kenitra Challenger Helsinki Challenger Guayaquil Challenger Lisbon Challenger Istanbul Challenger Szekesfehervar Challenger Tunis Challenger Santo Domingo Challenger Orleans Challenger Quimper Challenger Lyon Challenger Santos Challenger Meerbusch Challenger Sao Paulo Challenger Matsuyama Challenger Canberra Challenger Noumea Challenger Quimper Challenger Salzburg Challenger Salinas Challenger Mallorca Challenger Arad Challenger Charleston Challenger Manama Challenger Acapulco Challenger Aptos Challenger Rome 2 Challenger Nottingham 2 Challenger Trieste Challenger Meerbusch Challenger Orleans Challenger Barcelona Challenger Bergamo Challenger Roanne Challenger Bratislava Challenger Helsinki Challenger Lille Challenger Lugano Challenger Mauthausen Challenger Prostejov Challenger Cordenons Challenger Brest Challenger Banja Luka Challenger Sibiu Challenger Rio De Janeiro Challenger Ambato Challenger Lima 2 Challenger Yokohama Challenger Roanne Challenger Helsinki Challenger Tenerife 1 Challenger Antalya Challenger Maia Challenger Ostrava Challenger Bloomfield Hills Challenger Chicago Challenger Istanbul Challenger Nottingham Challenger Cherbourg Challenger San Luis Potosi Challenger Cuernavaca Challenger Ostrava Challenger Tunis Challenger Ilkley Challenger Studena Croatia Open - Umag Bordeaux Challenger Bratislava Challenger If Stockholm Open - Stockholm Bendigo Challenger Winston-Salem Open - Winston-Salem PBZ Zagreb Indoors - Zagreb Aix En Provence Challenger Split Challenger Barcelona Challenger Lisbon Challenger Grand Prix Hassan II - Casablanca Zagreb Challenger Oeiras 3 Challenger Geneva Open - Geneva Memphis Open - Memphis Delray Beach Open - Delray Beach Abierto Mexicano Telcel - Acapulco Sibiu Challenger BRD Nastase Tiriac Trophy - Bucharest TEB BNP Paribas Istanbul Open - Istanbul Winston-Salem Open - Winston-Salem Erste Bank Open - Vienna Delray Beach Open - Delray Beach Konzum Croatia Open - Umag Bet-at-home Open - Hamburg Abierto Mexicano - Los Cabos Winston-Salem Open - Winston-Salem Shenzhen Open - Shenzhen Sydney International - Sydney ABN AMRO World Tennis Tournament - Rotterdam Dubai Duty Free Tennis Championships - Dubai AEGON Championships - London Antalya Cup - Antalya Plava Laguna Croatia Open - Umag Abierto Mexicano - Los Cabos St. Petersburg Open - St. Petersburg Shenzhen Open - Shenzhen Bendigo Challenger Kremlin Cup - Moscow Alphen Challenger Campinas Challenger Bergamo Challenger Tiburon Challenger Banja Luka Challenger Samarkand Challenger Winston-Salem Open - Winston-Salem St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Santo Domingo Challenger Heilbronn Challenger Arad Challenger Astana Open - Nur-Sultan Kosice Challenger Abierto Mexicano Telcel - Acapulco St. Petersburg Open - St. Petersburg Kremlin Cup - Moscow Firenze Open - Florence San Luis Potosi Challenger Qatar ExxonMobil Open - Doha Libema Open - 's-Hertogenbosch Rio Open - Rio de Janeiro Dubai Duty Free Tennis Championships - Dubai Cherbourg Challenger Sarajevo Challenger Bratislava Challenger BRD Nastase Tiriac Trophy - Bucharest Lima Challenger Poznan Challenger Columbus Challenger Plava Laguna Croatia Open - Umag Serbia Open - Belgrade Anytech365 Andalucia Open - Marbella Ostrava Challenger Poznan Challenger Argentina Open - Buenos Aires Millennium Estoril Open - Estoril Nordea Open - Bastad Andria Challenger Mersin Challenger Mallorca Championships - Mallorca Mercedes Cup - Stuttgart Hamburg Open - Hamburg Genova Challenger Nottingham 1 Challenger Sarajevo Challenger Brisbane International - Brisbane Buenos Aires Challenger Kosice Challenger Open 13 - Marseille Kremlin Cup - Moscow Aircel Chennai Open - Chennai Nordea Open - Bastad European Open - Antwerp Erste Bank Open - Vienna TEB BNP Paribas Istanbul Open - Istanbul Ostrava Challenger Vegeta Croatia Open - Umag Citi Open - Washington Bet-at-home Open - Hamburg Sibiu Challenger Almaty Open - Almaty Quimper Challenger Erste Bank Open - Vienna Qatar ExxonMobil Open - Doha Garanti Koza Sofia Open - Sofia Winston-Salem Open - Winston-Salem cinch Championships - London Open de Nice Cote d'Azur - Nice Aegon Nottingham Open - Nottingham Konzum Croatia Open - Umag China Open - Beijing Braunschweig Challenger Erste Bank Open - Vienna Tampere Challenger Kremlin Cup - Moscow Bratislava Challenger Bratislava 2 Challenger Garanti Koza Sofia Open - Sofia Memphis Open - Memphis New York Open - New York Dubai Duty Free Tennis Championships - Dubai Forli 5 Challenger Hungarian Open - Budapest TEB BNP Paribas Istanbul Open - Istanbul Kenitra Challenger St. Petersburg Open - St. Petersburg Perugia Challenger Como Challenger Erste Bank Open - Vienna Open Sud de France - Montpellier Hamburg European Open - Hamburg Vancouver Challenger Gazprom Hungarian Open - Budapest Open Sud de France - Montpellier San Luis Potosi Challenger Florianopolis Challenger ABN AMRO World Tennis Tournament - Rotterdam Prostejov Challenger Banja Luka Challenger Plava Laguna Croatia Open - Umag Winston-Salem Open - Winston-Salem Marbella Challenger Belgrade Challenger Geneva Open - Geneva Turkish Airlines Open Antalya - Antalya SkiStar Swedish Open - Bastad Lugano Challenger Mexico City Challenger Split Challenger Zhuhai Open - Zhuhai China Open - Beijing Open Sud de France - Montpellier Abierto Mexicano Telcel - Acapulco Open Parc - Lyon Open Sud de France - Montpellier Zug Challenger Rosario Challenger Santo Domingo Challenger Prague 3 Challenger Serbia Open - Belgrade Movistar Chile Open - Santiago Barcelona Open Banc Sabadell - Barcelona Swiss Indoors Basel - Basel Plava Laguna Croatia Open - Umag Bengaluru Challenger Mexico City Challenger Delray Beach Open - Delray Beach Leon Challenger Open 13 Provence - Marseille Prague 2 Challenger Grand Prix Hassan II - Marrakech BMW Open - Munich bett1HULKS Championships - Cologne Qatar ExxonMobil Open - Doha European Open - Antwerp Stockholm Open - Stockholm Bratislava 2 Challenger Banja Luka Open - Banja Luka Brest Challenger cinch Championships - London China Open - Beijing Ismaning Challenger Helsinki Challenger Danderyd Challenger Boss Open - Stuttgart Koblenz Challenger Lille Challenger Barletta Challenger Bordeaux Challenger Chengdu Open - Chengdu Sony Open Tennis - Miami BNP Paribas Open - Indian Wells Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Internazionali BNL d'Italia - Rome Nottingham 2 Challenger Shanghai Rolex Masters - Shanghai Miami Open - Miami Bonn Challenger BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells PBZ Zagreb Indoors - Zagreb Miami Open - Miami Mutua Madrid Open - Madrid Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Apia International - Sydney Internazionali BNL d'Italia - Rome Open Parc - Lyon Kremlin Cup - Moscow Brisbane International - Brisbane Open 13 Provence - Marseille Western & Southern Open - New York TEB BNP Paribas Istanbul Open - Istanbul Abierto Mexicano de Tenis Mifel - Los Cabos ABN AMRO World Tennis Tournament - Rotterdam Vilnius Challenger Chennai Challenger Pune Challenger Mauthausen Challenger Heilbronn Challenger Bratislava 1 Challenger Granby Challenger Belgrade Open - Belgrade Adelaide International - Adelaide Canberra Challenger Phoenix Challenger Hellenic Championship - Athens Bordeaux Challenger Lyon Challenger Astana Open - Astana Mutua Madrid Open - Madrid Miami Open - Miami BNP Paribas Open - Indian Wells Rolex Paris Masters - Paris Mutua Madrid Open - Madrid Aircel Chennai Open - Chennai Stockholm Open - Stockholm Moselle Open - Metz Swiss Indoors Basel - Basel Internazionali BNL d'Italia - Rome Hangzhou Open - Hangzhou Japan Open Tennis Championships - Tokyo Dubai Duty Free Tennis Championships - Dubai National Bank Open - Montreal Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells Miami Open - Miami BNP Paribas Open - Indian Wells Rogers Cup - Toronto Miami Open - Miami Western & Southern Open - Cincinnati Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Western & Southern Open - Cincinnati Monte-Carlo Rolex Masters - Monte-Carlo Shanghai Rolex Masters - Shanghai Miami Open - Miami National Bank Open - Toronto Cincinnati Open - Cincinnati Western & Southern Open - Cincinnati Moselle Open - Metz China Open - Beijing German Tennis Championships - Hamburg Rakuten Japan Open - Tokyo Qatar ExxonMobil Open - Doha Open 13 Provence - Marseille Dubai Duty Free Tennis Championships - Dubai Wimbledon - London U.S. Open - New York Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Australian Open - Melbourne French Open - Paris Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London French Open - Paris U.S. Open - New York Wimbledon - London U.S. Open - New York U.S. Open - New York U.S. Open - New York Australian Open - Melbourne Australian Open Qualifying - Doha Australian Open - Melbourne Wimbledon - London Australian Open - Melbourne Australian Open - Melbourne French Open - Paris Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York French Open - Paris Wimbledon - London French Open - Paris Australian Open - Melbourne French Open - Paris Australian Open - Melbourne French Open - Paris Wimbledon - London BNP Paribas Masters - Paris Bucharest Open - Bucharest Rolex Paris Masters - Paris Davis Cup, Group II, 2R, BLR-BIH 4-1 Davis Cup, Group II, 3R, DEN-BIH 3-2 Davis Cup, Group II, 3R, BIH-LTU 2-3 Davis Cup, Group II, 3R, LTU-BIH 0-5 Davis Cup, Group I, 1R, BIH-POL 5-0 Davis Cup, Group I, 2R, SVK-BIH 2-3 Davis Cup, Group II, 1R, BIH-GRE 3-1 Davis Cup, Group II, 2R, FIN-BIH 2-3 Davis Cup, World Group, QR, AUS-BIH 4-0 Davis Cup, World Group I, PO, BIH-RSA 3-1 Davis Cup, Group I, 1R, PER-BIH 3-2 Davis Cup, World Group I, 1R, TPE-BIH 3-2 Davis Cup, Europe/Africa Group II, 2R, EST-BIH 2-3 Davis Cup, Europe/Africa Group II, 3R, POR-BIH 3-2 Davis Cup, Group II, 1R, BIH-LUX 4-1 French Open (juniors) Wimbledon (juniors) U.S. Open (juniors) Davis Cup, Group II, 2R, BIH-MDA 1-3 Davis Cup, Group II, 1R, ZIM-BIH 1-4 U.S. Open (juniors) Australian Open (juniors) All Lower level tournaments Davis Cup, Group I, 1R, ECU-BIH 3-2 Davis Cup, World Group, PO, SWE-BIH 3-1 Davis Cup, Group I, PO, TUN-BIH 1-3 Davis Cup, Group I, 1R, BIH-MEX 3-1 Davis Cup, Group I, 1R, BIH-GER 0-4 Davis Cup, Group I, PO, BUL-BIH 1-3 Davis Cup, Group I, PO, UZB-BIH 1-3 French Open (juniors) Davis Cup, Group II, 2R, BIH-TUR 3-1 Davis Cup, Group I, 2R, BIH-NED 1-3 Davis Cup, World Group, Q, FRA-BRA 4-0 Olympics - Rio de Janeiro French Open (juniors) French Open (juniors) Manacor Challenger Japan Open Tennis Championships - Tokyo Noumea Challenger